import Grid from './grid.vue'
import GridColumn from './grid-column.vue'
import GridColumns from 'element-ui/lib/table-column'
import GridBatchToolbar from './grid-toolbar/grid-batch-toolbar-proxy'
import GridMoreToolbar from './grid-toolbar/grid-more-toolbar-proxy'
import GridGlobalToolbar from './grid-toolbar/grid-global-toolbar-proxy'
import GridFilter from './grid-filter/grid-filter.vue'
import GridFilterItem from './grid-filter/grid-filter-item.vue'
import { GridSortProxy as GridSort } from './grid-sort'

Grid.install = (Vue) => {
  Vue.component(Grid.name, Grid)
  Vue.component('UiGridColumn', GridColumn)
  Vue.component('UiGridColumns', GridColumns)
  Vue.component('UiGridBatchToolbar', GridBatchToolbar)
  Vue.component('UiGridGlobalToolbar', GridGlobalToolbar)
  Vue.component('UiGridMoreToolbar', GridMoreToolbar)
  Vue.component('UiGridFilter', GridFilter)
  Vue.component('UiGridFilterItem', GridFilterItem)
  Vue.component('UiGridSort', GridSort)
}
export {
  Grid,
  GridColumn,
  GridFilter,
  GridFilterItem,
  GridSort,
  GridColumns
}
export default Grid
